A system can include a number of different types of resources. The types of resources that make up a system include, at one level, computer systems, storage devices and the like, as well as devices that are used to connect them (e.g., networking devices, etc.). At another level, a system can include the processor(s), memory and the like that typically constitute a single computer system.
Systems such as these are used in a variety of applications. A system may be used for a Web-based service such as an e-commerce site, or it may constitute some portion of a server farm or the like. The system may be owned by the business enterprise that uses the resources, or the resources may be leased to another business enterprise for their use.
When configuring a system, there are tradeoffs of cost versus performance. With an increase in cost, there is usually a corresponding increase in performance.
Costs can be balanced by maximizing system utilization. In other words, costs can be justified if the system is utilized to its fullest extent at least some of the time. If a system is provisioned with resources that end up not being used, this generally means that the cost of the system is not justified.
Accordingly, it is important for a system designer or operator to know the expected system workload in order to design a system to match. However, in the prior art, the tools available for evaluating the expected system workload do not allow the designer or operator to accurately forecast the type and amount of system resources that will be needed.
Because a system will perform inadequately without sufficient resources, the tendency is to overprovision a system, then either sell off unheeded resources or find some other use for them. This can increase costs unnecessarily, because it is unlikely that all costs can be recovered in the event of a sale, and because maintenance costs remain for surplus equipment.
Accordingly, a system design tool that enables designers and operators to more precisely provision a system would be useful. Such a design tool could alleviate the problems described above, and thus would provide an improvement over the prior art.